iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 12
2

本篇同步發文在個人Blog: 一袋.NET要扛幾樓?打造容器化的ASP.NET Core網站!系列文章 - (12) 建立會員系統 - 1

1. 傳統Cookie認證

  傳統網站系統的認證功能,通常是用Cookie認證。可參考這篇解說: [C#][ASP.NET] Web API 開發心得 (4) - 使用 FormsAuthentication 進行 API 授權驗證 ,引用他的這張圖:

  Cookie驗證的缺點包含

  • Cookie只限定一個Domain,但要請求的資源有時會到各種Url,變成Domain不符而無法請求
  • 不同的Client(PC網頁、手機等),資料要同步會比較困難

2. 使用OAuth2/OIDC的認證授權

  網頁的認證/授權系統從OAuth規格訂出來,改善前述Cookie驗證的問題,到今日演變成OAuth2 與 OIDC(OpenId Connect),像是Google/Facebook/Twitter等,採用OIDC的機制,使各個應用程式能實作更彈性的認證功能。

  OAuth2/OIDC有很多種認證方式,可以參考這篇的介紹OAuth 2.0 筆記 (1) 世界觀,而我們的會員系統會採用混和(Hybrid)授權機制。

3. IdentityServer4

  IdentityServer4是實作OIDC與OAuth2的ASP.NET Core函式庫,本會員系統會採用此套件做發開。可以參考IdentityServer4 官方網站

  下一篇將安裝IdentityServer4與設定Scope/Resource等。


上一篇
[Day 11] 建立商品列表的頁面 - 4
下一篇
[Day13] 建立會員系統 - 2
系列文
一袋.NET要扛幾樓?打造容器化的ASP.NET Core網站!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言